#ifndef GLCONTEXT_H
#define GLCONTEXT_H

#include "Troll3D_global.h"

#include "Shader.h"
#include "Program.h"
#include "BufferObject.h"

#include <vector>

using namespace std;
/* Must be used before any opengl operation. It'll load and store GLSL Programs, and set the
 * opengl buffers */
class TROLL3DSHARED_EXPORT GLContext
{
    /************************************************
    /*				Public
    /************************************************/
    public :

        /************************************************
        /*				Constructors
        /************************************************/

            GLContext();

        /************************************************
        /*				Methods
        /************************************************/

            void LoadProgram(const char * name, const char * pathFragment, const char * pathVertex);

        /************************************************
        /*				Properties
        /************************************************/

            vector<GLSLProgram * > programsLoaded;

            GLSLProgram *  program;


};

#endif // GLCONTEXT_H
